.btn{
    height: 35px;
    line-height: 35px;
    font-size: 14px;
    padding: 0 15px;
    border: solid 1px transparent;
    border-radius: 4px;
    background-color: #fff;
    display: inline-block;
    text-align: center;
    outline: 0;
    cursor: pointer;
    &.btn-lg{
        height: @btn-lg-height;
        line-height: @btn-lg-height;
        font-size: 16px;
    }
    &.btn-sm{
        height: @btn-sm-height;
        line-height: @btn-sm-height;
    }
    &.btn-xs{
        height: @btn-xs-height;
        line-height: @btn-xs-height;
    }
    &.btn-disabled{
        cursor: not-allowed;
        filter: alpha(opacity=65);
        .box-shadow(none);
        opacity: .65;
    }
    i{
        margin-right: @btn-img-space;
    }
}

.btn-block{
    width: 100%;
    display: block;
}

.btn-link {
    font-weight: 400;
    color: @link-color;
    border-radius: 0;
    &, &:active, &:focus, &:hover{
        border-color: transparent;
    }
    &, &:active, &.active, &[disabled]{
        background-color: transparent;
        .box-shadow(none);
    }
}

.btn-default{
    .button-variant(@btn-default-color; @btn-default-bg; @btn-default-border);
}
.btn-primary{
    .button-variant(@btn-primary-color; @btn-primary-bg; @btn-primary-border);
}
.btn-success{
    .button-variant(@btn-success-color; @btn-success-bg; @btn-success-border);
}
.btn-info{
    .button-variant(@btn-info-color; @btn-info-bg; @btn-info-border);
}
.btn-warning{
    .button-variant(@btn-warning-color; @btn-warning-bg; @btn-warning-border);
}
.btn-danger{
    .button-variant(@btn-danger-color; @btn-danger-bg; @btn-danger-border);
}

.button-variant(@color, @background, @border){
    color: @color;
    background-color: @background;
    border-color: @border;
    &:hover{
        background-color: darken(@background, 10%);
        border-color: darken(@border, 12%);
    }
    &.btn-disabled:hover{
        background-color: @background;
        border-color: @border; 
    }
}
